<?php
/**
 * 【商品】列表接口 （注：特殊首页&列表页都要用）
 * @author webopenfather
 */

// 导入公共库文件
include '../../util/function.php';
include '../../util/db.php';

// 1. 接受数据
$type = @$_REQUEST['type']; // 首页用要传递，商品列表页 不用传递
$pageno = @$_REQUEST['pageno'] ? $_REQUEST['pageno'] : 1; 
$pagesize = @$_REQUEST['pagesize'] ? $_REQUEST['pagesize'] : 5;
$keywords = @$_REQUEST['keywords'];

// 如果首页用了，但是不在 热卖/推荐/新品 范围内 则有误
if ($type && !in_array($type, ['hot', 'best', 'new'])) response(400, '参数有误');

// 2. 操作数据库（注：$pdo变量在db.php文件中定义了 所以可以直接用）
$where = "";
$limit = "";
if ($type) {
// 首页商品赛选条件
    $where .= " and is_{$type} = 1";
    $limit = ' limit 0,5';
} else {
// 列表分页
    $startno = ($pageno - 1) * $pagesize;
    $limit = " limit {$startno},{$pagesize}";
}
// 赛选
if ($keywords) $where .= " and goods_name like '%{$keywords}%' ";
$pdoStatement = $pdo->query("select * from ecs_goods where 1 {$where} {$limit}");
$datas = $pdoStatement->fetchAll(PDO::FETCH_ASSOC);

// 总条数
$pdoStatement = $pdo->query("select count(*) as totalNum from ecs_goods where 1 {$where}");
$data = $pdoStatement->fetch(PDO::FETCH_ASSOC);

// 3. 响应数据
response(200, '操作成功', [
    'list' => $datas,
    'total' => $data['totalNum']
]);

